package 力扣;
//在柠檬水摊上，每一杯柠檬水的售价为 5 美元。
//顾客排队购买你的产品，（按账单 bills 支付的顺序）一次购买一杯。
//每位顾客只买一杯柠檬水，然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零，也就是说净交易是每位顾客向你支付 5 美元。
//注意，一开始你手头没有任何零钱。
//如果你能给每位顾客正确找零，返回 true ，否则返回 false 。
public class 柠檬水找零 {
    public static void main(String[] args) {
       int[] bills={5,5,10,20,5,5,5,5,5,5,5,5,5,10,5,5,20,5,20,5};
        boolean b = lemonadeChange(bills);
        System.out.println(b);
    }
    public static boolean lemonadeChange(int[] bills) {
        if (bills[0] != 5)
            return false;
        //统计5元，10元的个数
        int count1 = 0;
        int count2 = 0;
        for (int i = 0; i < bills.length; i++) {
            if (bills[i] == 5)
                count1++;
            if (bills[i] == 10) {
                count2++;
                count1--;
            }
            if (bills[i] == 20) {
                if (count2==0)
                    count1-=3;
                else {
                    count1--;
                    count2--;
                }
            }
            if (count1<0 || count2<0)
                break;
        }
        return count1>=0 && count2>=0;
    }
}
